|
Программируем по-русски
|
Основная задача Глагола — дать человеку возможность воплощать свои мысли на языке, близком к его родному языку. Издатель Глагола
|
(******************************************************************************) (**) ОТДЕЛ ПроОпред+; (****************************************************************************** * НАЗНАЧЕНИЕ: вычисление определителя и обратной матрицы * * ПРИМЕЧАНИЯ: * Исходная матрица записана в файле "ПроМатр1.дан". * В этом файле 1-я строка содержит размер матрицы (строк и столбцов), * а последующие строки содержат значения элементов матрицы. ******************************************************************************) ИСПОЛЬЗУЕТ Матр ИЗ "...\Отделы\Числа\", МатрВВ ИЗ "...\Отделы\Числа\", Читать ИЗ "...\Отделы\Обмен\", Вывод ИЗ "...\Отделы\Обмен\"; (******************************************************************************) ЗАДАЧА Голова; ПЕР п:Читать.Поток; М,О:Матр.Доступ; (* исходная матрица и обратная к ней *) УКАЗ п:=МатрВВ.ОткрытьПоток("ПроМатр1.дан"); М:=МатрВВ.ЧитатьМатр(п); Читать.Закрыть(п); СОЗДАТЬ(О,РАЗМЕР(М^,0),РАЗМЕР(М^,1)); Вывод.Цепь("^Исходная матрица:^"); МатрВВ.ВыводМатр("%8.4f",М^); ЕСЛИ Матр.Обратить(М^,О^) = 0 ТО Вывод.Цепь("^Обратная матрица:^"); МатрВВ.ВыводМатр("%8.4f",О^); Вывод.ЧВещ("^Определитель: %8.4f^",Матр.Определитель(М^),0,0,0); ЕСЛИ Матр.Обратить(О^,М^) = 0 ТО Вывод.Цепь("^Обратная от обратной матрицы:^"); МатрВВ.ВыводМатр("%8.4f",М^) КОН ИНАЧЕ Вывод.Цепь("^Вырожденная матрица!^") КОН КОН Голова; (******************************************************************************) УКАЗ Голова КОН ПроОпред. ▲ Вопросы, замечания и предложения высылайте на atimopheyev@yahoo.com или Издателю Глагола:
|
|